CMX869B частичный перевод руководства.

Область применения: используя описание ниже у меня получилось принимать звонки и парсить DTMF коды. Осторожно в текстах ниже может содержаться неопределенное число грамматических ошибок, ранимым, в этом плане людям лучше избежать чтения.


1. Brief Description


CMX это многостандартный модем для использования EPOS терминалов и телефонно-ориентированных систем. Высокоинтегрированный одночиповый модем обеспечивает функции необходимые для поддержки:

Под контролем внутреннего мастера EPOS и других мастер-слейв протоколов.


В комплект входит высококачественный декодер DTMF с отличной устойчивостью к фальсификации голоса и стандартный кодер DTMF. В качестве альтернативы устройство может передавать и обнаруживать запрограммированные пользователем однотональные и двухтональные сигналы, сигналы о ходе выполнения вызова или сигналы вызова и ответа модема.


ПО CMX контролирует выходное управление для контроля «рычага» телефона и постоянно следить за входящим звонком находясь в спящем режиме. Когда линейное напряжение меняется или обнаружен звонок, плата обнаружения звонка выдает прерывание, которое может пробудить мастер контроллер.


Линейный канал может быть односторонним или разносторонним и усилитель линейного выхода является совмещенным напрямую управляемым внутри низкосопротивляемым трансформатором или опто паре. ..



3. Signal List

IP = Input

OP = Output

TS = Выход в третьем состянии

PWR = Power

NC = No Connection








1

REPLY DATA

TS


Выход последовательных данных C-BUS идущих на хост. Выход с высоким сопротивлением когда не посылаются данные

2

RDRVN

OP


Реле, с помощью которого подключают телефонную линию к микросхеме. Подтягивается к земле если активирован, к питанию - когда не активен. Сразу все понятно, если грянуть Figure 4a 2-Wire Line Interface Circuit

4

SERIAL CLOCK

IP


SPI

5

COMMAND DATA

IP


6

CSN

IP


8

RXA

IP


Входящая линия с двухпроводной телефонки.


9

RXBN

IP


10

RXAN

IP


11

RXAFB



13

VBIAS


Внутренне генерируемое напряжение смещения приблизительно AVDD / 2, за исключением случаев, когда устройство находится в режиме "Энергосбережения’, когда VBIAS будет разряжаться в AVSS. Должен быть отсоединен от AVSS конденсатором, установленным рядом с выводами устройства.

Генерирует напряжение смещения

14

TXAN



Исходящая линия к той же двухпроводной телефонке подсоединяется

15

TXA



17

RDN



Мониторит входящий звонок

20

VDEC



Генерирует напряжение


XTAL/CLOCK



Входы для подключения внешнего генератора


XTALN




IRQN



Выход сигнала прерывания. Прерывания настраиваются.





Далее несколько ног к питалову относящихся.















4. External Components





4.3 Line Interface


Плата линейный интерфейс нужна для обеспечения изоляции постоянного тока и завершения линии. CMX подсоединен к линии когда реле линии замкнуто. Реле может управляться выходом RDRVN. Как показано на 4a. Контроль выходного уровня ноги RDRVN описан в 6.2 на рис. 4a и рис. 4b находятся описание работы и не должно быть использовано в производственном дизайне. Правильный дизайн будет описан отдельно.


2-Wire Line Interface


4a трактовка. Нога RDRVN подключает реле, которое подключает TXA и TXAN, которые через транс связаны с той самой двухпроводной «телефонной линией». Подключение линии идет до «развязывающего»транса, т.е. рвется внешняя цепь линии, но еще дальше стоит.




Уровень сигнала линии передачи определяется колебанием напряжения между выводами TXA и TXAN, меньше 6 дБ из-за резистора R13 на выходе линии и меньше потерь в трансформаторе связи линии. Учитывая потерю 1 дБ в трансформаторе, с регистром режима передачи, установленным для усиления управления уровнем передачи 0 дБ,
номинальные уровни линии передачи будут:



Значение R11 должно быть выбрано так что бы принимаемый сигнал RXAFB 3.6dB был меньше чем на двухпроводной линии. Например, если потери трансформатора составляют 1 дБ, то R11 должен составлять 130 Ком. Значение R14 (15 Ком) выбрано для применения приблизительно 20 дБ дополнительного усиления, когда это требуется для идентификации линии вызывающего абонента типа 1.


Вход RXBN можно выбрать, установив бит 14 Общего управляющего регистра равным 1, который внутренне соединяет RXBN с RXAN. С компонентами, показанными на рисунках 4a и 4b, это добавит примерно 20 дБ к коэффициенту усиления Rx, подключив R14 параллельно с R11. Это облегчает обнаружение определенных сигналов во время подключения, например, которые могут потребоваться для приема идентификации линии вызывающего абонента типа 1. Для 2-проводного линейного интерфейса, показанного на рисунке 4a, конденсатор C12 необходим для обеспечения канала переменного тока к устройству, когда реле разомкнуто. Если это средство не требуется, R14 и C12 можно опустить.


5. General Description


CMX может работать как полнодуплексный QAM или DSPK автомодем, используя следующие типы модуляций:



Он также может быть настроен на работу под управлением хоста последовательности соединений как ручной модем, в следующих схемах модуляции с низкой скоростью QAM, DSPK и FSK (Частотная манипуляция):



Передающая схема может работать в одном из таких режимов:



Приемная схема:



Схемы обнаружения звонка, тонального декодера и модема FSK могут быть сконфигурированы для идентификации вызывающего абонента типа 1 (на связи). Этот объект является предметом отдельного примечания к заявке.

Когда CMX869B не используется, он может быть переведен в режим энергосбережения, который отключает все схемы, кроме встроенного регулятора, интерфейса C-ШИНЫ и кольцевого детектора.


5.7 Rx DTMF/Tones Detectors


В режиме обнаружения сигналов Rx принятый сигнал после прохождения через блок управления усилением Rx подается на детектор сигналов DTMF / Тонов / Хода вызова /Ответа. Пользователь может выбрать любой из четырех отдельных детекторов:


Определитель стандартных DTMF сигналов и идентификатор передаваемого символа в регистре статуса. Правильный DTMF сигнал будет с выставленным битом 5 в регистре статуса, так долго в единице, как долго звучит сигнал.


Программируемый тон парного детектора включает два раздельных тоновых детектора. Первый выставит бит 6 регистра статуса на протяжении пока определяется сигнал. Второй выставит 7 и 10 биты регистра статуса пока оба тона будут определяться.


Детектор прогресса звонка меряет размах сигнала на выходе 275Hz – 665Hz полосы пропускания фильтра и выставляет 10 бит регистра статуса, когда уровень измеряемого сигнала превышает установленный порог. Реакция фильтра хода выполнения вызова, включая влияние внешних компонентов на рисунках 4a и 4b, показана на рисунке 6.



Детектор «хода выполнения вызова» измеряет амплитуду сигнала на выходе полосового фильтра 275 Гц - 665 Гц и устанавливает бит 10 регистра состояния в 1, когда уровень сигнала превышает пороговое значение измерения. Реакция фильтра хода выполнения вызова, включая влияние внешних компонентов рисунков 4a и 4b, показана на рисунке 6.


Детектор тона ответа измеряет как амплитуду, так и частоту принятого сигнала и устанавливает бит 6 или бит 7 Регистра состояния в значение "1", когда принимается действительный сигнал 2225 Гц или 2100 Гц.




6. C-BUS Interface and Software Description



Этот блок обеспечивает передачу данных и контроль или информацию статуса между внутренними регистрами CMX и хостом. Каждая транзакция содержит

эта команда отправляется для чтения или записи соотв. Регистров CMX.


Данные посылаемые из хоста в линию Команд Данных (CD) синхронизируются внутри CMX по нарастающему фронту Serial Clock (SC).

Ответные данные, посылаемые из CMX в хост, являются валидными когда SC = H.


Линия CSN должна удерживаться в

C-BUS интерфейс совместим с самым общим последовательным интерфейсами хоста и может также быть легко реализуемым при помощи ног МК общего назначения с помощью простой процедуры ПО. На рис. 13 подробности требуемых таймаутов.


В CMX используются такие C-BUS адреса и регистры.






General Reset Command

(address only, no data)



Address $01

General Control Register,

16-bit write only.


Address $E0

Transmit Mode Register,

16-bit write-only.


Address $E1

Receive Mode Register,

16-bit write-only.


Address $E2

Transmit Data Register,

8 or 16-bit write only.


Address $E3

Alternate Transmit Data Register,

8-bit write only.


Address $E4

Receive Data Register,

8 or 16-bit read-only.


Address $E5

Status Register,

16-bit read-only.


Address $E6

Programming Register,

16-bit write-only.


Address $E8

QAM Modem Command Register,

16-bit write-only.


Address $EA

QAM Modem Status Register,

16-bit read-only.


Address $EB







Заметим: C-BUS адреса $E7, $E9, $EC, $ED, $EE and $EF выделены для тестирования продукта и не доступны в нормальной работе.



Прерывание работы.


В CMX будет прерывание при ошибке, ошибка отдается по линии IRQN = L, когда бит 15 IRQ статусного регистра SR и бит IRQ Enable в GCR(0xE0) оба выставлены. Смотри раздел 6.8.


Рисунок 8. Обязательно смотреть для понимания. Расписаны сигналы на линиях данных.




6.1 General Reset Command


Эта команда сбрасывает устройство, чистит все биты GCR, TMR и RMR а также биты 15 и 13 SR и переводит устройство в режим энергосбережения.


Какие-то неинтересные подробности…



6.2 General Control Register (E0).


Этот регистр управляет основными свойствами CMX, такими как энергосбережение и режим петли, IRQ маска и релейный выход.


Все биты этого регистра очищены в ноль с помощью GR команды. Обратите внимание, что флаг режима «2 символа» (2C) считывается только после сброса или включения питания.



Биты





15

Equ

Fixed Compromise Equalisers

0 – включить эквалайзер, 1 - отклюить


14

Hi Gain

Select high input gain

0 — открытая плата, 1 — интегрированное соединение


13

Pat det

Select Pattern Detect mode

0 — шаблон режима определения совместимый с CMX (умолч.) 1 — HDLC паттерн


12

0


Всегда в нуле


11

LB

Analogue Loopback test mode

0 — нет обратной связи (обычно), 1 — режим локальной обратной связи включен

Этот бит управляет тестовым режимом аналоговой обратной связи. В тестовом режиме обратной связи Регистры режима передачи и приема должны быть установлены на один и тот же тип модема, скорость передачи в бодах и битах. Реле линейного интерфейса должно быть разомкнуто, так как тестовая передача, которая подается обратно в канал Rx, появится на выводах Tx. Аналоговая обратная связь недоступна в режимах QAM Auto mode m.

10

2C

Modem '2-Character' mode

0 — 1-но символьный режим, 1 — 2-х символьный режим,


9

Rly

Relay Drive

0 — подтяжка к vdd, 1 — подтяжка к vss

Контроль выхода RDRVN

8

Pwr

Power-up

0 – в режиме энерго сбережения. все схемы отключены за исключением:

  • встроенного регулятора

  • детектора звонка

  • RDRVN интерфейса

  • CBUS интерфейса

1 — нормальный режим — полное питание

Это бит контроля питания внутренней схемы CMX включающей:

  • Xtal генератор (?обработка внешнего кварца)

  • встроенный генератор частоты

  • Vbias питание

7

Rst


0 — нормальн, 1 — внутренне подтянут в сброс


6

Irqnen


Установка этого бита равным 1 включает вывод IRQN.
0 – IRQN – отключен, 1 - ON


5

IRQ Mask Bits


Эти биты влияют на работу бита IRQ Регистра состояния, как описано в разделе 6.8

Эти биты влияют на работу IRQ бита регистра статуса как описано в 6.8

4




3




2




1




0





При первой подаче питания на устройство необходимо выполнить следующую процедуру включения питания для обеспечения правильной работы:



Когда устройство переключается из режима энергосбережения в режим нормальной работы путем установки бита «включения питания» на "1", бит «сброса» также должен быть установлен на "1" и должен удерживаться на "1" в течение примерно 20 мс, пока внутренние цепи, генератор Xtal и VBIAS стабилизируются перед началом использования передатчика или приемника.



6.3 Transmit Mode Register


Это регистр управления CMX типа и уровня передаваемого сигнала.


Настраивается










6.4 Receive Mode Register


Аналогично 6.3, только на прием.



Это регистр контроля типа и уровня принимаемого сигнала.


Все биты этого регистра чистятся командой общего сброса когда бит 7 общего контрольного регистра = 1.


Регистр работает в трех режимах

В зависимости от режима, группы бит полностью или частично меняют свою специализацию. Режим задается группой бит 15..12



6.5 QAM Automodem Command Register


Команды управления ?встроенного модема



6.6 Tx Data Register

Tx Data Register: 8 or 16-bit write-only. C-BUS addresses $E3 and $E4


Это регистр может быть установлен в 8-ти или 16-битный режим. Эту «настройку» не нужно менять после начала передачи данных.


Одно-символьный режим.

[Байт для передачи]


Двухсимвольный режим.

[первый байт для передачи] [второй байт для передачи]


В этот регистр следует записывать только тогда, когда бит готовности данных Tx регистра состояния установлен в 1.


В синхронном режиме и режиме передачи данных HDLC Tx передаются все 8 бит байта, причем первым передается бит 0 каждого байта.


В режимах Tx Start-Stop указанное количество битов данных будет взято из байта в регистре данных Tx (b0 байта первым). Стартовый бит, бит четности (если требуется) и стоповый бит(ы) будут добавлены автоматически.



6.7 Rx Data Register

Rx Data Register: 8 or 16-bit read-only. C-BUS address $E5


Аналогично 6.6, только на прием.




6.8 Status Register


Status Register: 16-bit read-only. C-BUS address $E6




Общие для всех режимов флаги



Биты

IRQ

бит






15

6

IRQ


Произошло прерывание



14

5

RD

Set to 1 on Ring Detect

Входящий звонок



13

4

PF

Programming Flag bit. See 6.10

Программный флаг. Логика связана с режимом программирования. Оно показывает когда можно программировать.



12

3

TxD

Set to 1 on Tx data ready. Cleared by write to Tx Data Register

Регистр передачи пуст (готов к загрузке). Очищается записью в регистр чего-нибудь



11

3

TxU

Set to 1 on Tx data underflow. Cleared by write to Tx Data Register

Регистр передачи перегружен. Очищается записью в регистр чего-нибудь.



Далее зависит от режима



IRQ

бит

Режим определения тонов / Прогресса вызова

Режим ручного модема

General Control Register b13 = 0 (CMX869A compatible pattern detect mode)

Режим ручного модема

General Control Register b13 = 1 (Enhanced HDLC pattern detect mode)


10

2

Выставится в 1 когда энергию нашли в полосе п вызова или оба программных тона обнаружены

10

1 — пока обнаружена энергия в Rx modem signal band

10


1 — пока обнаружена энергия в Rx modem signal band


9

1

0

9

1- пока есть последовательности 10101 или11001100 «точечный шаблон»

9


Скремблирование..


8

1

0

8

Б8=1, Б7=1 СКР.ВЫКЛ — нет, СКР.ВКЛ скрамблер 1s

Б8=1, Б7=0 СКР.ВЫКЛ — 0s, СКР.ВКЛ 0s

Б8=0, Б7=1 СКР.ВЫКЛ — 1s, СКР.ВКЛ скрамблер 1s

Б8=0, Б7=0 СКР.ВЫКЛ — нет, СКР.ВКЛ нет

8



7

1

1 — 2100Hz ответный тон или второй программный тон обнаружен

7

7



6

0

1 — 2225Hz ответный тон или первый программный тон обнаружен

6

1 — данные в регистре Rx готовы, сброс чтением DR



5

0

1 — когда DTMF код обнаружен

5

1 — данные в регистре Rx перегружены, сброс чтением DR



4


0

4

1 — Rx ошибка фрейма



3


DTMF код биты 3210

3

Start-Stop условие: 1 есть бит четности



2


2

?Start-Stop условие: 1 есть бит четности



1


1

1 — есть данные в DR регистре 2 символа (двусимвольный режим)



0


0

?FSK frequency demodulator output (0 in QAM modes)






Значение статусного регистра зависит от режима приема


Когда дешифратор включен определяется незашифрованная длительность 1s будет подавлять последовательности шифрованного 1s определителя.


Колонка IRQ битовая маски показывает соответствующий битовой маске в «общем контрольном регистре». Переход от 0 к 1 в каком то из битов 14..5 регистра статуса будет вызывать установку 15 бита IRQ, если относящийся к нему бит маски IRQ выставлен. Бит IRQ очистится чтением статусного регистра или общим сбросом или выставлением 7 – 8 битов общего контрольного регистра.


Выходная нога IRQN подтянется книзу когда IRQ бит статуса и IRQNEN бит 6 общего контрольного регистра оба выставятся в 1.


Работа FSK демодулятора данных и детектора шаблонов внутри CMX не зависит от состояния наличия сигнала в Rx .




6.9 QAM Automodem Status Register


QAM Automodem Status Register: 16-bit read-only. C-BUS address $EB





6.10 Programming Register


Programming Register : 16-bit write-only. C-BUS address $E8


Этот регистр используется для программирования передачи и приема программных пар тонов с помощью записи подходящих значений в RAM расположенный внутри CMX. Заметим, что этот RAM очищается переходом в спящий режим или сбросом.


Регистр можно писать только когда флаг b13 статуса = 1. Событие записи программного регистра чистит b13. Когда программирование завершено (где-то 150 us) CMX выставит бит снова в единичку.


Когда программируются пары тонов передачи и приема, не меняются режимы передачи или приема пока не будет завершено программирование и Programming Flag bit не вернется в 1.





CMX869A. Application Note. Full Duplex Call Set-Up.


Документ: "CMX869A Full Duplex Call Set-Up.pdf"


На рисунке 1 выше представлена адаптация V.22-бис описание «рукопожатия» из тома VIII - Брошюра VIII.1 из Blue Book series published by the ITU (formerly CCITT) November 1988.. Действия, выполняемые вызывающим и отвечающим модемами, проиллюстрированы ниже блок-схемами и строками команд C-BUS для реализации на CMX868.


1. V.22bis Handshake



Tx Mode b11…b9 = Tx gain

Tx Mode b8…b7 = 550Hz/1800Hz Guard Tone enabling

Tx Mode b4…b0 = USART mode and format

Rx Mode b11…b9 = Rx gain

Rx Mode b5…b0 = USART mode and format